The present invention relates to detecting objects in images.
In this specification, the term image can refer to an entire image, or to a portion of an image.
A well-known technique for detecting objects in images is to use a cascade. The cascade includes an ordered sequence of stages. Each stage includes a detector function. Conventionally, the detector function is a binary classification function that outputs a positive result if an image resembles an object of interest and a negative result if an image does not resemble an object of interest.
After each stage is a rejection function that determines, based on the output of the current stage, whether to reject the image at the current stage as not resembling the object of interest, or to allow the image to pass to the next stage of evaluation by the cascade.
In a conventional cascade, if the image fails the current stage, that is, if the output of the current stage is negative, then the rejection function rejects the image as not resembling the object of interest. The image must receive a positive result from all of the stages of the cascade in order to be classified by the cascade as resembling the object of interest. Thus, a candidate image with otherwise salient, object-like features may be incorrectly rejected by the cascade just because the image barely fails to satisfy the criteria of a single stage. Conversely, a non-object image that just barely passes the criteria of all the stages may be incorrectly accepted by the cascade. In this specification, such a prior art cascade will be referred to as a hard cascade.
One known type of hard cascade, commonly referred to as a boosting chain, propagates the detector output of a current stage to subsequent stages so that the detector functions in subsequent stages can make use of the prior detector output. However, because the detector function of each stage of a hard cascade relies on the detector output produced in a prior stage, the stages within a boosting chain cannot be reordered. Boosting chains are further described in the paper, “Boosting Chain Learning for Object Detection”, by Rong Xiao, Long Zhu, and Hong-Jiang Zhang, published at the IEEE Society's International Conference on Computer Vision (2003).